home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #173 (1992)(Rhein-Sieg-Soft).zip / Franz PD Disk #173 (1992)(Rhein-Sieg-Soft).adf / PR / PRConvert.doc < prev    next >
Text File  |  1992-03-23  |  8KB  |  199 lines

  1. ==============================================================================
  2. ==============================================================================
  3. ===     PRConvert V2.09a (Teil von Romanverwaltung 'PR' V2.09a 1503-92)    ===
  4. ===                                                                        ===
  5. ===                      (LAUFFAEHIG AUCH UNTER OS V2.04)                  ===
  6. ===                                                                        ===
  7. ==============================================================================
  8. ===                                                                        ===
  9. ===                       (c) 1989-92 by Andreas Ralph Kleinert            ===
  10. ===                                      Grube Hohe Grethe 23              ===
  11. ===                                      W-5900 Siegen 1                   ===
  12. ===                                      Germany                           ===
  13. ===                                                                        ===
  14. ==============================================================================
  15. ==============================================================================
  16.  
  17.      Fuer PRConvert V2.09a gelten dieselben rechtlichen Bedingungen wie fuer
  18.      Romanverwaltung 'PR' V2.09a.
  19.  
  20.      ----- Dokumentationsfile-Version : V2.09a-A-1503-92 -----
  21.  
  22. =============================================================================
  23. = PROGRAMMBESCHREIBUNG :                                                    =
  24. =============================================================================
  25.  
  26.      PRConvert ist ein Hilfsprogramm fuer Romanverwaltung 'PR', mit dem auch
  27.      aeltere Versionen der Datenfiles noch verwendet werden koennen.
  28.  
  29.      Gemeint sind Datenfiles von Versionen vor V2.06a.
  30.  
  31.      Es ist jedoch Vorsicht geboten, da alle von R.V. 'PR' verwendeten Daten-
  32.      files, egal ob alt oder neu, keine diesbezueglichen Kennungen, abgesehen
  33.      von ihrer Datei-Endung, tragen.
  34.      Im Zweifelsfalle sollte mit immer einer Sicherheitskopie der jeweiligen
  35.      Dateien gearbeitet werden.
  36.  
  37. =============================================================================
  38. = BEDIENUNG :                                                               =
  39. =============================================================================
  40.  
  41.      Die Bedienung, die im Uebrigen nur vom CLI oder von der Shell aus moeg-
  42.      lich ist, gestaltet sich denkbar einfach :
  43.  
  44.      Aufrufkonvention(en) :
  45.  
  46.       PRConvert ?             fuer weitere Informationen
  47.  
  48.          ODER
  49.  
  50.       PRConvert <alte Datei[.dat]> <neue Datei[.dat]>
  51.  
  52.      
  53.      Die Endung ".dat" kann bei der Angabe des Datei-Namens der Einfachheit
  54.      halber weggelassen werden, der Name der Datei muss jedoch AUF JEDEN FALL
  55.      mit diesen Buchstaben enden, da sie ansonsten nicht gefunden wird.
  56.      (Eventuell "renamen" !!!)
  57.      Dies ist eine Sicherheitsmassnahme, um sicherzustellen, dass auch wirk-
  58.      lich nur Datenfiles konvertiert werden.
  59.  
  60.      P.S. :
  61.  
  62.      Soweit ich weiss, gibt es auch andere Programme, deren Datenfiles die
  63.      Endung ".dat" tragen.
  64.      Hier besteht jedoch kein Zusammenhang !
  65.  
  66. =============================================================================
  67. = Datei-Aufbau :                                                            =
  68. =============================================================================
  69.  
  70.      Das "PRCard-Format upto V2.09a" :
  71.      =================================
  72.  
  73.      Ein Eintrag in einem Datenfile benoetigt jeweils 368 Bytes, die sich
  74.      wie folgt aufschluesseln :
  75.  
  76.      (struktographischer Ausschnitt aus einer Datei, zur Erlaeuterung kom-
  77.       mentiert)
  78.  
  79.  
  80.      [8   Bytes Kennung   ] /* 1. Eintrag */
  81.      [100 Bytes Titel     ]
  82.      [200 Bytes Untertitel]
  83.      [ 30 Bytes Autor     ]
  84.      [ 30 Bytes ISBN      ]
  85.      [8   Bytes Kennung   ] /* 2. Eintrag */
  86.      [100 Bytes Titel     ]
  87.      [200 Bytes Untertitel]
  88.      [ 30 Bytes Autor     ]
  89.      [ 30 Bytes ISBN      ]
  90.      [8   Bytes Kennung   ] /* 3. Eintrag */
  91.      [100 Bytes Titel     ]
  92.      [200 Bytes Untertitel]
  93.      [ 30 Bytes Autor     ]
  94.      [ 30 Bytes ISBN      ]
  95.  
  96.                .
  97.                .
  98.                .
  99.  
  100.      [8   Bytes Kennung   ] /* n. Eintrag */
  101.      [100 Bytes Titel     ]
  102.      [200 Bytes Untertitel]
  103.      [ 30 Bytes Autor     ]
  104.      [ 30 Bytes ISBN      ]
  105.  
  106.      Die Daten werden unsortiert abgespeichert.
  107.      Ein Einlesen/Speichern mit den C-Standardfunktionen "fscanf"/"fprintf"
  108.      ist nicht sinnvoll bzw. moeglich, stattdessen muessen die Funktionen
  109.      "read"/"write" oder direkt die DOS-Funktionen "Read"/"Write" verwendet
  110.      werden. Die Laengen der Strings muessen, unabhaengig von der jeweiligen
  111.      tatsaechlichen Stringlaenge, die durch ein Nullbyte gekennzeichnet wird,
  112.      stets die oben angegebenen Laengen haben.
  113.  
  114.      Nach dem Einlesen werden die Daten in eine Struktur geschrieben, von
  115.      der unbegrenzt viele in einer Liste verkettet sein koennen :
  116.  
  117.      struct PRCard                          /* Structure to be chained */
  118.       {
  119.        struct Node    prc_Node;              /* chain-node               */ 
  120.        char           prc_Titel      [100];
  121.        char           prc_Untertitel [200];
  122.        char           prc_Autor       [30];
  123.        char           prc_ISBN        [30];
  124.       };
  125.  
  126.      Der Eintrag "prc_Node.ln_Name" hat dabei auf einen String mit der
  127.      Laenge sieben (sieben Zeichen + Nullbyte = 8 Bytes) zu zeigen, der
  128.      mit den acht Bytes Kennung aus der Datei identisch sein muss.
  129.      Der Speicher ist selbstverstaendlich vorher zu allokieren
  130.      (AllocMem(), o.a.) und der String hineinzukopieren.
  131.  
  132.      Die Definitionen der Node-Struktur finden sie in der Standard-Include-
  133.      Datei "include/exec/nodes.h".
  134.  
  135.      Ein Uebertragen dieser Strukturdefinition in Assembler, Pascal, Modula,
  136.      Oberon oder irgendeine BASIC-Variante duerfte nicht allzu schwer sein.
  137.  
  138.      Sie koennen in Ihre eigenen Programme gern eine Unterstuezungsroutine
  139.      fuer dieses Format, das "PRCard-Format upto V2.09a", einbauen, falls
  140.      sie vorhaben, eine Weiterverarbeitung dieses Formates zu unterstuetzen.
  141.  
  142.      Ich verlange lediglich, dass Sie sich an die oben festgelegten Defini-
  143.      tionen halten und in Ihrer Dokumentationsdatei angeben, woher Sie
  144.      diese Informationen haben.
  145.  
  146.      P.S.:
  147.  
  148.            Es ist durchaus moeglich, dass dieses Format irgenwann einmal zu
  149.            einem "richtigen" Format mit eigener Kennung und Versionsangabe
  150.            ausgebaut wird.
  151.            "PRConvert" wird dann selbstverstaendlich die Umwandlung dieser
  152.            Dateien ebenfalls uebernehmen.
  153.  
  154. =============================================================================
  155. = VERSIONS-"HISTORY" :                                                      =
  156. =============================================================================
  157.  
  158.    V2.6a bis ... :
  159.  
  160.     - Erste Versionen, noch ohne eigene Dokumentation.
  161.  
  162. ------------------------------------------------------------------------------
  163.  
  164.    V2.09a :
  165.  
  166.     - "Beinahe"-Fehler mit "fclose" (Einleseroutine) korrigiert
  167.     - verbesserte Unterbrechungsverarbeitung
  168.     - Code-Optimierung
  169.     - "stricmp()" statt "strcmp()" (Case-Sensitivity desaktiviert)
  170.     - kleinere Verbesserungen
  171.  
  172. ------------------------------------------------------------------------------
  173. ------------------------------------------------------------------------------
  174.  
  175.    Bekannte Fehler :
  176.  
  177.     - Es sind keine Fehler bekannt.
  178.  
  179. ------------------------------------------------------------------------------
  180. ------------------------------------------------------------------------------
  181.  
  182.    Moegliche weitere Verbesserungen in spaeteren Versionen :
  183.  
  184.    - weitere interne Umkonfigurierung(en)
  185.    - weitere Erweiterung(en) des Funktionsumfanges
  186.    - weitere Optimierung(en) der Programmstruktur
  187.    - Fehlerverbesserung(en)
  188.  
  189.      Ich bitte ausdruecklich um die Zusendung von "BUG-Reports" !
  190.  
  191. =============================================================================
  192. = COPYRIGHTS :                                                              =
  193. =============================================================================
  194.  
  195. =============================================================================
  196. =   Copyrights zu anderen erwaehnten Produkten/Programmen sind den jeweili- =
  197. =   gen Produktbeschreibungen der Hersteller/Vertreiber zu entnehmen.       =
  198. =============================================================================
  199.